Interrupts এর ভূমিকা এবং প্রকারভেদ

Computer Programming - অ্যাসেম্বলি প্রোগ্রামিং (Assembly Programming) Interrupts এবং Exception Handling (Interrupts and Exception Handling) |
197
197

Interrupts হলো বিশেষ সংকেত যা CPU-কে চলমান কাজ থামিয়ে একটি নির্দিষ্ট কাজ সম্পন্ন করতে বাধ্য করে। এটি সাধারণত কোনো ইভেন্ট বা কন্ডিশনের কারণে ঘটে, যেমন ব্যবহারকারীর ইনপুট, টাইমার ইভেন্ট, অথবা হার্ডওয়্যার ত্রুটি। Interrupts প্রোগ্রামের কার্যপ্রবাহ নিয়ন্ত্রণে গুরুত্বপূর্ণ ভূমিকা পালন করে এবং দ্রুত সাড়া দেওয়ার জন্য ব্যবহৃত হয়।


Interrupts এর ভূমিকা:

  1. প্রোগ্রামের কার্যপ্রবাহ নিয়ন্ত্রণ: Interrupts ব্যবহার করে CPU তার চলমান কাজ সাময়িকভাবে থামিয়ে ইমার্জেন্সি বা গুরুত্বপূর্ণ কাজ সম্পন্ন করতে পারে এবং তারপর আবার মূল কাজ চালিয়ে যায়।
  2. রিয়েল-টাইম রেসপন্স: Interrupts সিস্টেমকে রিয়েল-টাইম ইভেন্টের সাথে দ্রুত সাড়া দিতে সক্ষম করে, যেমন ব্যবহারকারীর ইনপুট গ্রহণ।
  3. মাল্টি-টাস্কিং সাপোর্ট: CPU একাধিক কাজ একই সময়ে চালানোর ক্ষেত্রে Interrupts ব্যবহার করে কার্যক্ষমতা উন্নত করতে পারে।
  4. হার্ডওয়্যার ইন্টারফেসিং: হার্ডওয়্যার ডিভাইস যেমন কিবোর্ড, মাউস, এবং নেটওয়ার্ক কার্ড Interrupts ব্যবহার করে CPU-এর সাথে যোগাযোগ করে।

Interrupts এর প্রকারভেদ:

১. Hardware Interrupts:

  • সংজ্ঞা: Hardware Interrupts তখন ঘটে যখন কোনো হার্ডওয়্যার ডিভাইস CPU-কে একটি সংকেত পাঠায়। উদাহরণস্বরূপ, কিবোর্ডে কোনো কী চাপা হলে একটি হার্ডওয়্যার ইন্টারাপ্ট ঘটে।
  • বৈশিষ্ট্য:
    • সরাসরি হার্ডওয়্যার থেকে সৃষ্ট।
    • CPU-কে তাত্ক্ষণিক প্রতিক্রিয়া করতে বাধ্য করে।
  • উদাহরণ: কিবোর্ড ইন্টারাপ্ট (INT 09h), মাউস ইন্টারাপ্ট।

২. Software Interrupts:

  • সংজ্ঞা: Software Interrupts সফটওয়্যারের মাধ্যমে সৃষ্ট হয় এবং এটি প্রোগ্রামার দ্বারা নির্দিষ্ট করা হতে পারে। এটি সাধারণত বিশেষ ইনস্ট্রাকশন (INT) ব্যবহার করে ডাকা হয়।
  • বৈশিষ্ট্য:
    • প্রোগ্রামের কার্যপ্রবাহ নিয়ন্ত্রণের জন্য ব্যবহৃত।
    • সিস্টেম কল বা বিভিন্ন পরিষেবা অ্যাক্সেস করার জন্য ব্যবহৃত হয়।
  • উদাহরণ: DOS সিস্টেম কল (INT 21h), BIOS কল (INT 10h)।

৩. Exceptions (Traps):

  • সংজ্ঞা: Exceptions হলো বিশেষ ধরনের Software Interrupts যা CPU দ্বারা স্বয়ংক্রিয়ভাবে তৈরি হয় যখন কোনো ত্রুটি বা বিশেষ শর্ত ঘটে।
  • বৈশিষ্ট্য:
    • ভুল বা অনির্ধারিত পরিস্থিতি (যেমন division by zero, invalid opcode) পরিচালনার জন্য ব্যবহৃত হয়।
    • ডিবাগিং এবং ত্রুটি নির্ণয়ে সহায়ক।
  • উদাহরণ: Division by zero interrupt, Invalid operation interrupt।

৪. Maskable এবং Non-Maskable Interrupts:

  • Maskable Interrupts (IRQs):
    • সংজ্ঞা: এই ধরনের Interrupts CPU-এর ইন্টারাপ্ট মাস্ক রেজিস্টার দ্বারা নিষ্ক্রিয় করা যায়।
    • ব্যবহার: সাধারণত কম গুরুত্বপূর্ণ কাজের জন্য ব্যবহৃত হয়।
  • Non-Maskable Interrupts (NMI):
    • সংজ্ঞা: এই ধরনের Interrupts CPU দ্বারা নিষ্ক্রিয় করা যায় না। এটি খুবই গুরুত্বপূর্ণ এবং জরুরি ইভেন্টের জন্য ব্যবহৃত হয়।
    • ব্যবহার: সিস্টেম ত্রুটি, যেমন হার্ডওয়্যার ব্যর্থতা পরিচালনা।

Interrupt Handling Process:

Interrupts সৃষ্ট হলে CPU নিম্নলিখিত ধাপ অনুসরণ করে:

  1. বর্তমান কাজের সংরক্ষণ: CPU তার বর্তমান রেজিস্টার এবং প্রোগ্রাম কাউন্টার (EIP) স্ট্যাকে সংরক্ষণ করে।
  2. Interrupt Service Routine (ISR) কল: নির্দিষ্ট Interrupt Service Routine-এ (ISR) চলে যায় এবং সেই ইন্টারাপ্টের কাজ সম্পন্ন করে।
  3. রেজিস্টার পুনরুদ্ধার: ISR শেষে CPU পূর্বের সংরক্ষিত রেজিস্টার এবং প্রোগ্রাম কাউন্টার পুনরুদ্ধার করে।
  4. মূল কার্যপ্রবাহে ফেরা: CPU মূল কাজ চালিয়ে যায়।

সারসংক্ষেপ

Interrupts CPU-র কার্যপ্রবাহ নিয়ন্ত্রণে এবং দ্রুত প্রতিক্রিয়া প্রদানে গুরুত্বপূর্ণ ভূমিকা পালন করে। Hardware এবং Software Interrupts বিভিন্ন ইভেন্টে CPU-কে সাড়া দিতে সক্ষম করে। Interrupts-এর মাধ্যমে CPU বিভিন্ন কাজ, ত্রুটি, এবং হার্ডওয়্যার ইভেন্ট পরিচালনা করতে পারে। Maskable এবং Non-Maskable Interrupts CPU-র ইন্টারাপ্ট হ্যান্ডলিং-এর আরও জটিলতা যোগ করে, যা সিস্টেমের স্থিতিশীলতা এবং প্রতিক্রিয়াশীলতা নিশ্চিত করে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion